TPTP Problem File: SCT169^1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : SCT169^1 : TPTP v8.2.0. Released v5.3.0.
% Domain   : Social Choice Theory
% Problem  : Arrow's Impossibility Theorem line 29, 100 axioms selected
% Version  : Especial.
% English  :

% Refs     : [BN10]  Boehme & Nipkow (2010), Sledgehammer: Judgement Day
%          : [Bla11] Blanchette (2011), Email to Geoff Sutcliffe
% Source   : [Bla11]
% Names    : arrow_100_thf_l29 [Bla11]

% Status   : Theorem
% Rating   : 1.00 v5.3.0
% Syntax   : Number of formulae    :  121 (  37 unt;  23 typ;   0 def)
%            Number of atoms       :  189 ( 158 equ;   0 cnn)
%            Maximal formula atoms :    5 (   1 avg)
%            Number of connectives :  588 (  36   ~;   5   |;  19   &; 454   @)
%                                         (  30 <=>;  44  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   13 (   5 avg)
%            Number of types       :    4 (   3 usr)
%            Number of type conns  :   35 (  35   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   21 (  20 usr;   3 con; 0-2 aty)
%            Number of variables   :  202 (   0   ^; 189   !;  13   ?; 202   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2011-08-09 18:57:48
%------------------------------------------------------------------------------
%----Should-be-implicit typings (3)
thf(ty_ty_tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    arrow_1346734812le_alt: $tType ).

thf(ty_ty_tc__List__Olist_Itc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt_J,type,
    list_A1528105233le_alt: $tType ).

thf(ty_ty_tc__Nat__Onat,type,
    nat: $tType ).

%----Explicit typings (20)
thf(sy_c_HOL_Oequal__class_Oequal_000tc__List__Olist_Itc__Arrow____Order____Mirabell,type,
    equal_2044961839le_alt: list_A1528105233le_alt > list_A1528105233le_alt > $o ).

thf(sy_c_List_Oappend_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    append1050458273le_alt: list_A1528105233le_alt > list_A1528105233le_alt > list_A1528105233le_alt ).

thf(sy_c_List_Obutlast_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    butlas1146323672le_alt: list_A1528105233le_alt > list_A1528105233le_alt ).

thf(sy_c_List_Odistinct_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    distin1107700095le_alt: list_A1528105233le_alt > $o ).

thf(sy_c_List_OdropWhile_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    dropWh40674093le_alt: ( arrow_1346734812le_alt > $o ) > list_A1528105233le_alt > list_A1528105233le_alt ).

thf(sy_c_List_Ohd_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    hd_Arr689575519le_alt: list_A1528105233le_alt > arrow_1346734812le_alt ).

thf(sy_c_List_Oinsert_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    insert844458914le_alt: arrow_1346734812le_alt > list_A1528105233le_alt > list_A1528105233le_alt ).

thf(sy_c_List_Olast_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    last_A2088691109le_alt: list_A1528105233le_alt > arrow_1346734812le_alt ).

thf(sy_c_List_Olist_OCons_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    cons_A1100118844le_alt: arrow_1346734812le_alt > list_A1528105233le_alt > list_A1528105233le_alt ).

thf(sy_c_List_Olist_ONil_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    nil_Ar10086284le_alt: list_A1528105233le_alt ).

thf(sy_c_List_Omaps_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt_000tc__Ar,type,
    maps_A51637569le_alt: ( arrow_1346734812le_alt > list_A1528105233le_alt ) > list_A1528105233le_alt > list_A1528105233le_alt ).

thf(sy_c_List_Onull_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    null_A244857236le_alt: list_A1528105233le_alt > $o ).

thf(sy_c_List_Oreplicate_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    replic235430982le_alt: nat > arrow_1346734812le_alt > list_A1528105233le_alt ).

thf(sy_c_List_Orev_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    rev_Ar1977782764le_alt: list_A1528105233le_alt > list_A1528105233le_alt ).

thf(sy_c_List_Orotate1_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    rotate1206725081le_alt: list_A1528105233le_alt > list_A1528105233le_alt ).

thf(sy_c_List_Osplice_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    splice244790623le_alt: list_A1528105233le_alt > list_A1528105233le_alt > list_A1528105233le_alt ).

thf(sy_c_List_Otl_000tc__Arrow____Order____Mirabelle____sdiojnqkdh__Oalt,type,
    tl_Arr1336826979le_alt: list_A1528105233le_alt > list_A1528105233le_alt ).

thf(sy_c_fequal_000tc__List__Olist_Itc__Arrow____Order____Mirabelle____sdiojnqkdh__O,type,
    fequal194154450le_alt: list_A1528105233le_alt > list_A1528105233le_alt > $o ).

thf(sy_v_a,type,
    a: arrow_1346734812le_alt ).

thf(sy_v_b,type,
    b: arrow_1346734812le_alt ).

%----Relevant facts (94)
thf(fact_0_alt3,axiom,
    ? [A_2: arrow_1346734812le_alt,B: arrow_1346734812le_alt,C: arrow_1346734812le_alt] : ( distin1107700095le_alt @ ( cons_A1100118844le_alt @ A_2 @ ( cons_A1100118844le_alt @ B @ ( cons_A1100118844le_alt @ C @ nil_Ar10086284le_alt ) ) ) ) ).

thf(fact_1_distinct_Osimps_I1_J,axiom,
    distin1107700095le_alt @ nil_Ar10086284le_alt ).

thf(fact_2_list_Osimps_I2_J,axiom,
    ! [A_4: arrow_1346734812le_alt,List_4: list_A1528105233le_alt] :
      ( nil_Ar10086284le_alt
     != ( cons_A1100118844le_alt @ A_4 @ List_4 ) ) ).

thf(fact_3_list_Osimps_I3_J,axiom,
    ! [A_3: arrow_1346734812le_alt,List_3: list_A1528105233le_alt] :
      ( ( cons_A1100118844le_alt @ A_3 @ List_3 )
     != nil_Ar10086284le_alt ) ).

thf(fact_4_neq__Nil__conv,axiom,
    ! [Xs_71: list_A1528105233le_alt] :
      ( ( Xs_71 != nil_Ar10086284le_alt )
    <=> ? [Y_3: arrow_1346734812le_alt,Ys_7: list_A1528105233le_alt] :
          ( Xs_71
          = ( cons_A1100118844le_alt @ Y_3 @ Ys_7 ) ) ) ).

thf(fact_5_list_Oexhaust,axiom,
    ! [Y_7: list_A1528105233le_alt] :
      ( ( Y_7 != nil_Ar10086284le_alt )
     => ~ ! [A_2: arrow_1346734812le_alt,List_2: list_A1528105233le_alt] :
            ( Y_7
           != ( cons_A1100118844le_alt @ A_2 @ List_2 ) ) ) ).

thf(fact_6_not__Cons__self,axiom,
    ! [Xs_70: list_A1528105233le_alt,X_33: arrow_1346734812le_alt] :
      ( Xs_70
     != ( cons_A1100118844le_alt @ X_33 @ Xs_70 ) ) ).

thf(fact_7_not__Cons__self2,axiom,
    ! [X_32: arrow_1346734812le_alt,Xs_69: list_A1528105233le_alt] :
      ( ( cons_A1100118844le_alt @ X_32 @ Xs_69 )
     != Xs_69 ) ).

thf(fact_8_list_Oinject,axiom,
    ! [A_1: arrow_1346734812le_alt,List_1: list_A1528105233le_alt,A: arrow_1346734812le_alt,List: list_A1528105233le_alt] :
      ( ( ( cons_A1100118844le_alt @ A_1 @ List_1 )
        = ( cons_A1100118844le_alt @ A @ List ) )
    <=> ( ( A_1 = A )
        & ( List_1 = List ) ) ) ).

thf(fact_9_splice_Osimps_I2_J,axiom,
    ! [V: arrow_1346734812le_alt,Va: list_A1528105233le_alt] :
      ( ( splice244790623le_alt @ ( cons_A1100118844le_alt @ V @ Va ) @ nil_Ar10086284le_alt )
      = ( cons_A1100118844le_alt @ V @ Va ) ) ).

thf(fact_10_insert__Nil,axiom,
    ! [X_31: arrow_1346734812le_alt] :
      ( ( insert844458914le_alt @ X_31 @ nil_Ar10086284le_alt )
      = ( cons_A1100118844le_alt @ X_31 @ nil_Ar10086284le_alt ) ) ).

thf(fact_11_list__nonempty__induct,axiom,
    ! [P_5: list_A1528105233le_alt > $o,Xs_68: list_A1528105233le_alt] :
      ( ( Xs_68 != nil_Ar10086284le_alt )
     => ( ! [X_20: arrow_1346734812le_alt] : ( P_5 @ ( cons_A1100118844le_alt @ X_20 @ nil_Ar10086284le_alt ) )
       => ( ! [X_20: arrow_1346734812le_alt,Xs_23: list_A1528105233le_alt] :
              ( ( Xs_23 != nil_Ar10086284le_alt )
             => ( ( P_5 @ Xs_23 )
               => ( P_5 @ ( cons_A1100118844le_alt @ X_20 @ Xs_23 ) ) ) )
         => ( P_5 @ Xs_68 ) ) ) ) ).

thf(fact_12_distinct__butlast,axiom,
    ! [Xs_67: list_A1528105233le_alt] :
      ( ( Xs_67 != nil_Ar10086284le_alt )
     => ( ( distin1107700095le_alt @ Xs_67 )
       => ( distin1107700095le_alt @ ( butlas1146323672le_alt @ Xs_67 ) ) ) ) ).

thf(fact_13_butlast_Osimps_I1_J,axiom,
    ( ( butlas1146323672le_alt @ nil_Ar10086284le_alt )
    = nil_Ar10086284le_alt ) ).

thf(fact_14_distinct__insert,axiom,
    ! [X_30: arrow_1346734812le_alt,Xs_66: list_A1528105233le_alt] :
      ( ( distin1107700095le_alt @ Xs_66 )
     => ( distin1107700095le_alt @ ( insert844458914le_alt @ X_30 @ Xs_66 ) ) ) ).

thf(fact_15_splice_Osimps_I3_J,axiom,
    ! [X_29: arrow_1346734812le_alt,Xs_65: list_A1528105233le_alt,Y_6: arrow_1346734812le_alt,Ys_33: list_A1528105233le_alt] :
      ( ( splice244790623le_alt @ ( cons_A1100118844le_alt @ X_29 @ Xs_65 ) @ ( cons_A1100118844le_alt @ Y_6 @ Ys_33 ) )
      = ( cons_A1100118844le_alt @ X_29 @ ( cons_A1100118844le_alt @ Y_6 @ ( splice244790623le_alt @ Xs_65 @ Ys_33 ) ) ) ) ).

thf(fact_16_splice__Nil2,axiom,
    ! [Xs_64: list_A1528105233le_alt] :
      ( ( splice244790623le_alt @ Xs_64 @ nil_Ar10086284le_alt )
      = Xs_64 ) ).

thf(fact_17_splice_Osimps_I1_J,axiom,
    ! [Ys_32: list_A1528105233le_alt] :
      ( ( splice244790623le_alt @ nil_Ar10086284le_alt @ Ys_32 )
      = Ys_32 ) ).

thf(fact_18_butlast_Osimps_I2_J,axiom,
    ! [X_28: arrow_1346734812le_alt,Xs_63: list_A1528105233le_alt] :
      ( ( ( Xs_63 = nil_Ar10086284le_alt )
       => ( ( butlas1146323672le_alt @ ( cons_A1100118844le_alt @ X_28 @ Xs_63 ) )
          = nil_Ar10086284le_alt ) )
      & ( ( Xs_63 != nil_Ar10086284le_alt )
       => ( ( butlas1146323672le_alt @ ( cons_A1100118844le_alt @ X_28 @ Xs_63 ) )
          = ( cons_A1100118844le_alt @ X_28 @ ( butlas1146323672le_alt @ Xs_63 ) ) ) ) ) ).

thf(fact_19_eq__Nil__null,axiom,
    ! [Xs_62: list_A1528105233le_alt] :
      ( ( Xs_62 = nil_Ar10086284le_alt )
    <=> ( null_A244857236le_alt @ Xs_62 ) ) ).

thf(fact_20_List_Onull__def,axiom,
    ! [Xs_61: list_A1528105233le_alt] :
      ( ( null_A244857236le_alt @ Xs_61 )
    <=> ( Xs_61 = nil_Ar10086284le_alt ) ) ).

thf(fact_21_null__rec_I2_J,axiom,
    null_A244857236le_alt @ nil_Ar10086284le_alt ).

thf(fact_22_null__rec_I1_J,axiom,
    ! [X_27: arrow_1346734812le_alt,Xs_60: list_A1528105233le_alt] :
      ~ ( null_A244857236le_alt @ ( cons_A1100118844le_alt @ X_27 @ Xs_60 ) ) ).

thf(fact_23_butlast__snoc,axiom,
    ! [Xs_59: list_A1528105233le_alt,X_26: arrow_1346734812le_alt] :
      ( ( butlas1146323672le_alt @ ( append1050458273le_alt @ Xs_59 @ ( cons_A1100118844le_alt @ X_26 @ nil_Ar10086284le_alt ) ) )
      = Xs_59 ) ).

thf(fact_24_append__assoc,axiom,
    ! [Xs_58: list_A1528105233le_alt,Ys_31: list_A1528105233le_alt,Zs_8: list_A1528105233le_alt] :
      ( ( append1050458273le_alt @ ( append1050458273le_alt @ Xs_58 @ Ys_31 ) @ Zs_8 )
      = ( append1050458273le_alt @ Xs_58 @ ( append1050458273le_alt @ Ys_31 @ Zs_8 ) ) ) ).

thf(fact_25_append__eq__append__conv2,axiom,
    ! [Xs_57: list_A1528105233le_alt,Ys_30: list_A1528105233le_alt,Zs_7: list_A1528105233le_alt,Ts: list_A1528105233le_alt] :
      ( ( ( append1050458273le_alt @ Xs_57 @ Ys_30 )
        = ( append1050458273le_alt @ Zs_7 @ Ts ) )
    <=> ? [Us_1: list_A1528105233le_alt] :
          ( ( ( Xs_57
              = ( append1050458273le_alt @ Zs_7 @ Us_1 ) )
            & ( ( append1050458273le_alt @ Us_1 @ Ys_30 )
              = Ts ) )
          | ( ( ( append1050458273le_alt @ Xs_57 @ Us_1 )
              = Zs_7 )
            & ( Ys_30
              = ( append1050458273le_alt @ Us_1 @ Ts ) ) ) ) ) ).

thf(fact_26_same__append__eq,axiom,
    ! [Xs_56: list_A1528105233le_alt,Ys_29: list_A1528105233le_alt,Zs_6: list_A1528105233le_alt] :
      ( ( ( append1050458273le_alt @ Xs_56 @ Ys_29 )
        = ( append1050458273le_alt @ Xs_56 @ Zs_6 ) )
    <=> ( Ys_29 = Zs_6 ) ) ).

thf(fact_27_append__same__eq,axiom,
    ! [Ys_28: list_A1528105233le_alt,Xs_55: list_A1528105233le_alt,Zs_5: list_A1528105233le_alt] :
      ( ( ( append1050458273le_alt @ Ys_28 @ Xs_55 )
        = ( append1050458273le_alt @ Zs_5 @ Xs_55 ) )
    <=> ( Ys_28 = Zs_5 ) ) ).

thf(fact_28_append__eq__appendI,axiom,
    ! [Ys_27: list_A1528105233le_alt,Us: list_A1528105233le_alt,Xs_54: list_A1528105233le_alt,Xs1_1: list_A1528105233le_alt,Zs_4: list_A1528105233le_alt] :
      ( ( ( append1050458273le_alt @ Xs_54 @ Xs1_1 )
        = Zs_4 )
     => ( ( Ys_27
          = ( append1050458273le_alt @ Xs1_1 @ Us ) )
       => ( ( append1050458273le_alt @ Xs_54 @ Ys_27 )
          = ( append1050458273le_alt @ Zs_4 @ Us ) ) ) ) ).

thf(fact_29_append__Cons,axiom,
    ! [X_25: arrow_1346734812le_alt,Xs_53: list_A1528105233le_alt,Ys_26: list_A1528105233le_alt] :
      ( ( append1050458273le_alt @ ( cons_A1100118844le_alt @ X_25 @ Xs_53 ) @ Ys_26 )
      = ( cons_A1100118844le_alt @ X_25 @ ( append1050458273le_alt @ Xs_53 @ Ys_26 ) ) ) ).

thf(fact_30_Cons__eq__appendI,axiom,
    ! [Xs_52: list_A1528105233le_alt,Zs_3: list_A1528105233le_alt,X_24: arrow_1346734812le_alt,Xs1: list_A1528105233le_alt,Ys_25: list_A1528105233le_alt] :
      ( ( ( cons_A1100118844le_alt @ X_24 @ Xs1 )
        = Ys_25 )
     => ( ( Xs_52
          = ( append1050458273le_alt @ Xs1 @ Zs_3 ) )
       => ( ( cons_A1100118844le_alt @ X_24 @ Xs_52 )
          = ( append1050458273le_alt @ Ys_25 @ Zs_3 ) ) ) ) ).

thf(fact_31_append__Nil,axiom,
    ! [Ys_24: list_A1528105233le_alt] :
      ( ( append1050458273le_alt @ nil_Ar10086284le_alt @ Ys_24 )
      = Ys_24 ) ).

thf(fact_32_Nil__is__append__conv,axiom,
    ! [Xs_51: list_A1528105233le_alt,Ys_23: list_A1528105233le_alt] :
      ( ( nil_Ar10086284le_alt
        = ( append1050458273le_alt @ Xs_51 @ Ys_23 ) )
    <=> ( ( Xs_51 = nil_Ar10086284le_alt )
        & ( Ys_23 = nil_Ar10086284le_alt ) ) ) ).

thf(fact_33_append__Nil2,axiom,
    ! [Xs_50: list_A1528105233le_alt] :
      ( ( append1050458273le_alt @ Xs_50 @ nil_Ar10086284le_alt )
      = Xs_50 ) ).

thf(fact_34_self__append__conv,axiom,
    ! [Xs_49: list_A1528105233le_alt,Ys_22: list_A1528105233le_alt] :
      ( ( Xs_49
        = ( append1050458273le_alt @ Xs_49 @ Ys_22 ) )
    <=> ( Ys_22 = nil_Ar10086284le_alt ) ) ).

thf(fact_35_self__append__conv2,axiom,
    ! [Ys_21: list_A1528105233le_alt,Xs_48: list_A1528105233le_alt] :
      ( ( Ys_21
        = ( append1050458273le_alt @ Xs_48 @ Ys_21 ) )
    <=> ( Xs_48 = nil_Ar10086284le_alt ) ) ).

thf(fact_36_append__is__Nil__conv,axiom,
    ! [Xs_47: list_A1528105233le_alt,Ys_20: list_A1528105233le_alt] :
      ( ( ( append1050458273le_alt @ Xs_47 @ Ys_20 )
        = nil_Ar10086284le_alt )
    <=> ( ( Xs_47 = nil_Ar10086284le_alt )
        & ( Ys_20 = nil_Ar10086284le_alt ) ) ) ).

thf(fact_37_append__self__conv,axiom,
    ! [Xs_46: list_A1528105233le_alt,Ys_19: list_A1528105233le_alt] :
      ( ( ( append1050458273le_alt @ Xs_46 @ Ys_19 )
        = Xs_46 )
    <=> ( Ys_19 = nil_Ar10086284le_alt ) ) ).

thf(fact_38_append__self__conv2,axiom,
    ! [Xs_45: list_A1528105233le_alt,Ys_18: list_A1528105233le_alt] :
      ( ( ( append1050458273le_alt @ Xs_45 @ Ys_18 )
        = Ys_18 )
    <=> ( Xs_45 = nil_Ar10086284le_alt ) ) ).

thf(fact_39_eq__Nil__appendI,axiom,
    ! [Xs_44: list_A1528105233le_alt,Ys_17: list_A1528105233le_alt] :
      ( ( Xs_44 = Ys_17 )
     => ( Xs_44
        = ( append1050458273le_alt @ nil_Ar10086284le_alt @ Ys_17 ) ) ) ).

thf(fact_40_append__eq__Cons__conv,axiom,
    ! [Ys_16: list_A1528105233le_alt,Zs_2: list_A1528105233le_alt,X_23: arrow_1346734812le_alt,Xs_43: list_A1528105233le_alt] :
      ( ( ( append1050458273le_alt @ Ys_16 @ Zs_2 )
        = ( cons_A1100118844le_alt @ X_23 @ Xs_43 ) )
    <=> ( ( ( Ys_16 = nil_Ar10086284le_alt )
          & ( Zs_2
            = ( cons_A1100118844le_alt @ X_23 @ Xs_43 ) ) )
        | ? [Ys_15: list_A1528105233le_alt] :
            ( ( Ys_16
              = ( cons_A1100118844le_alt @ X_23 @ Ys_15 ) )
            & ( ( append1050458273le_alt @ Ys_15 @ Zs_2 )
              = Xs_43 ) ) ) ) ).

thf(fact_41_Cons__eq__append__conv,axiom,
    ! [X_22: arrow_1346734812le_alt,Xs_42: list_A1528105233le_alt,Ys_14: list_A1528105233le_alt,Zs_1: list_A1528105233le_alt] :
      ( ( ( cons_A1100118844le_alt @ X_22 @ Xs_42 )
        = ( append1050458273le_alt @ Ys_14 @ Zs_1 ) )
    <=> ( ( ( Ys_14 = nil_Ar10086284le_alt )
          & ( ( cons_A1100118844le_alt @ X_22 @ Xs_42 )
            = Zs_1 ) )
        | ? [Ys_15: list_A1528105233le_alt] :
            ( ( ( cons_A1100118844le_alt @ X_22 @ Ys_15 )
              = Ys_14 )
            & ( Xs_42
              = ( append1050458273le_alt @ Ys_15 @ Zs_1 ) ) ) ) ) ).

thf(fact_42_append1__eq__conv,axiom,
    ! [Xs_41: list_A1528105233le_alt,X_21: arrow_1346734812le_alt,Ys_13: list_A1528105233le_alt,Y_5: arrow_1346734812le_alt] :
      ( ( ( append1050458273le_alt @ Xs_41 @ ( cons_A1100118844le_alt @ X_21 @ nil_Ar10086284le_alt ) )
        = ( append1050458273le_alt @ Ys_13 @ ( cons_A1100118844le_alt @ Y_5 @ nil_Ar10086284le_alt ) ) )
    <=> ( ( Xs_41 = Ys_13 )
        & ( X_21 = Y_5 ) ) ) ).

thf(fact_43_butlast__append,axiom,
    ! [Xs_40: list_A1528105233le_alt,Ys_12: list_A1528105233le_alt] :
      ( ( ( Ys_12 = nil_Ar10086284le_alt )
       => ( ( butlas1146323672le_alt @ ( append1050458273le_alt @ Xs_40 @ Ys_12 ) )
          = ( butlas1146323672le_alt @ Xs_40 ) ) )
      & ( ( Ys_12 != nil_Ar10086284le_alt )
       => ( ( butlas1146323672le_alt @ ( append1050458273le_alt @ Xs_40 @ Ys_12 ) )
          = ( append1050458273le_alt @ Xs_40 @ ( butlas1146323672le_alt @ Ys_12 ) ) ) ) ) ).

thf(fact_44_rev__induct,axiom,
    ! [Xs_39: list_A1528105233le_alt,P_4: list_A1528105233le_alt > $o] :
      ( ( P_4 @ nil_Ar10086284le_alt )
     => ( ! [X_20: arrow_1346734812le_alt,Xs_23: list_A1528105233le_alt] :
            ( ( P_4 @ Xs_23 )
           => ( P_4 @ ( append1050458273le_alt @ Xs_23 @ ( cons_A1100118844le_alt @ X_20 @ nil_Ar10086284le_alt ) ) ) )
       => ( P_4 @ Xs_39 ) ) ) ).

thf(fact_45_rev__cases,axiom,
    ! [Xs_38: list_A1528105233le_alt] :
      ( ( Xs_38 != nil_Ar10086284le_alt )
     => ~ ! [Ys_7: list_A1528105233le_alt,Y_3: arrow_1346734812le_alt] :
            ( Xs_38
           != ( append1050458273le_alt @ Ys_7 @ ( cons_A1100118844le_alt @ Y_3 @ nil_Ar10086284le_alt ) ) ) ) ).

thf(fact_46_equal__Nil__null,axiom,
    ! [Xs_37: list_A1528105233le_alt] :
      ( ( equal_2044961839le_alt @ Xs_37 @ nil_Ar10086284le_alt )
    <=> ( null_A244857236le_alt @ Xs_37 ) ) ).

thf(fact_47_snoc__eq__iff__butlast,axiom,
    ! [Xs_36: list_A1528105233le_alt,X_19: arrow_1346734812le_alt,Ys_11: list_A1528105233le_alt] :
      ( ( ( append1050458273le_alt @ Xs_36 @ ( cons_A1100118844le_alt @ X_19 @ nil_Ar10086284le_alt ) )
        = Ys_11 )
    <=> ( ( Ys_11 != nil_Ar10086284le_alt )
        & ( ( butlas1146323672le_alt @ Ys_11 )
          = Xs_36 )
        & ( ( last_A2088691109le_alt @ Ys_11 )
          = X_19 ) ) ) ).

thf(fact_48_append__butlast__last__id,axiom,
    ! [Xs_35: list_A1528105233le_alt] :
      ( ( Xs_35 != nil_Ar10086284le_alt )
     => ( ( append1050458273le_alt @ ( butlas1146323672le_alt @ Xs_35 ) @ ( cons_A1100118844le_alt @ ( last_A2088691109le_alt @ Xs_35 ) @ nil_Ar10086284le_alt ) )
        = Xs_35 ) ) ).

thf(fact_49_rotate__simps,axiom,
    ! [X_18: arrow_1346734812le_alt,Xs_34: list_A1528105233le_alt] :
      ( ( ( rotate1206725081le_alt @ nil_Ar10086284le_alt )
        = nil_Ar10086284le_alt )
      & ( ( rotate1206725081le_alt @ ( cons_A1100118844le_alt @ X_18 @ Xs_34 ) )
        = ( append1050458273le_alt @ Xs_34 @ ( cons_A1100118844le_alt @ X_18 @ nil_Ar10086284le_alt ) ) ) ) ).

thf(fact_50_equal__list__def,axiom,
    ! [X_17: list_A1528105233le_alt,Y_4: list_A1528105233le_alt] :
      ( ( equal_2044961839le_alt @ X_17 @ Y_4 )
    <=> ( X_17 = Y_4 ) ) ).

thf(fact_51_rotate1__is__Nil__conv,axiom,
    ! [Xs_33: list_A1528105233le_alt] :
      ( ( ( rotate1206725081le_alt @ Xs_33 )
        = nil_Ar10086284le_alt )
    <=> ( Xs_33 = nil_Ar10086284le_alt ) ) ).

thf(fact_52_distinct1__rotate,axiom,
    ! [Xs_32: list_A1528105233le_alt] :
      ( ( distin1107700095le_alt @ ( rotate1206725081le_alt @ Xs_32 ) )
    <=> ( distin1107700095le_alt @ Xs_32 ) ) ).

thf(fact_53_last__ConsL,axiom,
    ! [X_16: arrow_1346734812le_alt,Xs_31: list_A1528105233le_alt] :
      ( ( Xs_31 = nil_Ar10086284le_alt )
     => ( ( last_A2088691109le_alt @ ( cons_A1100118844le_alt @ X_16 @ Xs_31 ) )
        = X_16 ) ) ).

thf(fact_54_last__ConsR,axiom,
    ! [X_15: arrow_1346734812le_alt,Xs_30: list_A1528105233le_alt] :
      ( ( Xs_30 != nil_Ar10086284le_alt )
     => ( ( last_A2088691109le_alt @ ( cons_A1100118844le_alt @ X_15 @ Xs_30 ) )
        = ( last_A2088691109le_alt @ Xs_30 ) ) ) ).

thf(fact_55_last_Osimps,axiom,
    ! [X_14: arrow_1346734812le_alt,Xs_29: list_A1528105233le_alt] :
      ( ( ( Xs_29 = nil_Ar10086284le_alt )
       => ( ( last_A2088691109le_alt @ ( cons_A1100118844le_alt @ X_14 @ Xs_29 ) )
          = X_14 ) )
      & ( ( Xs_29 != nil_Ar10086284le_alt )
       => ( ( last_A2088691109le_alt @ ( cons_A1100118844le_alt @ X_14 @ Xs_29 ) )
          = ( last_A2088691109le_alt @ Xs_29 ) ) ) ) ).

thf(fact_56_last__appendL,axiom,
    ! [Xs_28: list_A1528105233le_alt,Ys_10: list_A1528105233le_alt] :
      ( ( Ys_10 = nil_Ar10086284le_alt )
     => ( ( last_A2088691109le_alt @ ( append1050458273le_alt @ Xs_28 @ Ys_10 ) )
        = ( last_A2088691109le_alt @ Xs_28 ) ) ) ).

thf(fact_57_last__appendR,axiom,
    ! [Xs_27: list_A1528105233le_alt,Ys_9: list_A1528105233le_alt] :
      ( ( Ys_9 != nil_Ar10086284le_alt )
     => ( ( last_A2088691109le_alt @ ( append1050458273le_alt @ Xs_27 @ Ys_9 ) )
        = ( last_A2088691109le_alt @ Ys_9 ) ) ) ).

thf(fact_58_last__append,axiom,
    ! [Xs_26: list_A1528105233le_alt,Ys_8: list_A1528105233le_alt] :
      ( ( ( Ys_8 = nil_Ar10086284le_alt )
       => ( ( last_A2088691109le_alt @ ( append1050458273le_alt @ Xs_26 @ Ys_8 ) )
          = ( last_A2088691109le_alt @ Xs_26 ) ) )
      & ( ( Ys_8 != nil_Ar10086284le_alt )
       => ( ( last_A2088691109le_alt @ ( append1050458273le_alt @ Xs_26 @ Ys_8 ) )
          = ( last_A2088691109le_alt @ Ys_8 ) ) ) ) ).

thf(fact_59_last__snoc,axiom,
    ! [Xs_25: list_A1528105233le_alt,X_13: arrow_1346734812le_alt] :
      ( ( last_A2088691109le_alt @ ( append1050458273le_alt @ Xs_25 @ ( cons_A1100118844le_alt @ X_13 @ nil_Ar10086284le_alt ) ) )
      = X_13 ) ).

thf(fact_60_maps__simps_I1_J,axiom,
    ! [F: arrow_1346734812le_alt > list_A1528105233le_alt,X_12: arrow_1346734812le_alt,Xs_24: list_A1528105233le_alt] :
      ( ( maps_A51637569le_alt @ F @ ( cons_A1100118844le_alt @ X_12 @ Xs_24 ) )
      = ( append1050458273le_alt @ ( F @ X_12 ) @ ( maps_A51637569le_alt @ F @ Xs_24 ) ) ) ).

thf(fact_61_not__distinct__decomp,axiom,
    ! [Ws: list_A1528105233le_alt] :
      ( ~ ( distin1107700095le_alt @ Ws )
     => ? [Xs_23: list_A1528105233le_alt,Ys_7: list_A1528105233le_alt,Zs: list_A1528105233le_alt,Y_3: arrow_1346734812le_alt] :
          ( Ws
          = ( append1050458273le_alt @ Xs_23 @ ( append1050458273le_alt @ ( cons_A1100118844le_alt @ Y_3 @ nil_Ar10086284le_alt ) @ ( append1050458273le_alt @ Ys_7 @ ( append1050458273le_alt @ ( cons_A1100118844le_alt @ Y_3 @ nil_Ar10086284le_alt ) @ Zs ) ) ) ) ) ) ).

thf(fact_62_equal,axiom,
    equal_2044961839le_alt = fequal194154450le_alt ).

thf(fact_63_equal__refl,axiom,
    ! [X_11: list_A1528105233le_alt] : ( equal_2044961839le_alt @ X_11 @ X_11 ) ).

thf(fact_64_eq__equal,axiom,
    fequal194154450le_alt = equal_2044961839le_alt ).

thf(fact_65_equal__eq,axiom,
    ! [X_10: list_A1528105233le_alt,Y_2: list_A1528105233le_alt] :
      ( ( equal_2044961839le_alt @ X_10 @ Y_2 )
    <=> ( X_10 = Y_2 ) ) ).

thf(fact_66_replicate__append__same,axiom,
    ! [I: nat,X_9: arrow_1346734812le_alt] :
      ( ( append1050458273le_alt @ ( replic235430982le_alt @ I @ X_9 ) @ ( cons_A1100118844le_alt @ X_9 @ nil_Ar10086284le_alt ) )
      = ( cons_A1100118844le_alt @ X_9 @ ( replic235430982le_alt @ I @ X_9 ) ) ) ).

thf(fact_67_rev_Osimps_I2_J,axiom,
    ! [X_8: arrow_1346734812le_alt,Xs_22: list_A1528105233le_alt] :
      ( ( rev_Ar1977782764le_alt @ ( cons_A1100118844le_alt @ X_8 @ Xs_22 ) )
      = ( append1050458273le_alt @ ( rev_Ar1977782764le_alt @ Xs_22 ) @ ( cons_A1100118844le_alt @ X_8 @ nil_Ar10086284le_alt ) ) ) ).

thf(fact_68_rev__eq__Cons__iff,axiom,
    ! [Xs_21: list_A1528105233le_alt,Y_1: arrow_1346734812le_alt,Ys_6: list_A1528105233le_alt] :
      ( ( ( rev_Ar1977782764le_alt @ Xs_21 )
        = ( cons_A1100118844le_alt @ Y_1 @ Ys_6 ) )
    <=> ( Xs_21
        = ( append1050458273le_alt @ ( rev_Ar1977782764le_alt @ Ys_6 ) @ ( cons_A1100118844le_alt @ Y_1 @ nil_Ar10086284le_alt ) ) ) ) ).

thf(fact_69_rev__is__rev__conv,axiom,
    ! [Xs_20: list_A1528105233le_alt,Ys_5: list_A1528105233le_alt] :
      ( ( ( rev_Ar1977782764le_alt @ Xs_20 )
        = ( rev_Ar1977782764le_alt @ Ys_5 ) )
    <=> ( Xs_20 = Ys_5 ) ) ).

thf(fact_70_rev__swap,axiom,
    ! [Xs_19: list_A1528105233le_alt,Ys_4: list_A1528105233le_alt] :
      ( ( ( rev_Ar1977782764le_alt @ Xs_19 )
        = Ys_4 )
    <=> ( Xs_19
        = ( rev_Ar1977782764le_alt @ Ys_4 ) ) ) ).

thf(fact_71_rev__replicate,axiom,
    ! [N_2: nat,X_7: arrow_1346734812le_alt] :
      ( ( rev_Ar1977782764le_alt @ ( replic235430982le_alt @ N_2 @ X_7 ) )
      = ( replic235430982le_alt @ N_2 @ X_7 ) ) ).

thf(fact_72_rev__rev__ident,axiom,
    ! [Xs_18: list_A1528105233le_alt] :
      ( ( rev_Ar1977782764le_alt @ ( rev_Ar1977782764le_alt @ Xs_18 ) )
      = Xs_18 ) ).

thf(fact_73_append__replicate__commute,axiom,
    ! [N_1: nat,X_6: arrow_1346734812le_alt,K: nat] :
      ( ( append1050458273le_alt @ ( replic235430982le_alt @ N_1 @ X_6 ) @ ( replic235430982le_alt @ K @ X_6 ) )
      = ( append1050458273le_alt @ ( replic235430982le_alt @ K @ X_6 ) @ ( replic235430982le_alt @ N_1 @ X_6 ) ) ) ).

thf(fact_74_distinct__rev,axiom,
    ! [Xs_17: list_A1528105233le_alt] :
      ( ( distin1107700095le_alt @ ( rev_Ar1977782764le_alt @ Xs_17 ) )
    <=> ( distin1107700095le_alt @ Xs_17 ) ) ).

thf(fact_75_rev__append,axiom,
    ! [Xs_16: list_A1528105233le_alt,Ys_3: list_A1528105233le_alt] :
      ( ( rev_Ar1977782764le_alt @ ( append1050458273le_alt @ Xs_16 @ Ys_3 ) )
      = ( append1050458273le_alt @ ( rev_Ar1977782764le_alt @ Ys_3 ) @ ( rev_Ar1977782764le_alt @ Xs_16 ) ) ) ).

thf(fact_76_rev_Osimps_I1_J,axiom,
    ( ( rev_Ar1977782764le_alt @ nil_Ar10086284le_alt )
    = nil_Ar10086284le_alt ) ).

thf(fact_77_Nil__is__rev__conv,axiom,
    ! [Xs_15: list_A1528105233le_alt] :
      ( ( nil_Ar10086284le_alt
        = ( rev_Ar1977782764le_alt @ Xs_15 ) )
    <=> ( Xs_15 = nil_Ar10086284le_alt ) ) ).

thf(fact_78_rev__is__Nil__conv,axiom,
    ! [Xs_14: list_A1528105233le_alt] :
      ( ( ( rev_Ar1977782764le_alt @ Xs_14 )
        = nil_Ar10086284le_alt )
    <=> ( Xs_14 = nil_Ar10086284le_alt ) ) ).

thf(fact_79_singleton__rev__conv,axiom,
    ! [X_5: arrow_1346734812le_alt,Xs_13: list_A1528105233le_alt] :
      ( ( ( cons_A1100118844le_alt @ X_5 @ nil_Ar10086284le_alt )
        = ( rev_Ar1977782764le_alt @ Xs_13 ) )
    <=> ( Xs_13
        = ( cons_A1100118844le_alt @ X_5 @ nil_Ar10086284le_alt ) ) ) ).

thf(fact_80_rev__singleton__conv,axiom,
    ! [Xs_12: list_A1528105233le_alt,X_4: arrow_1346734812le_alt] :
      ( ( ( rev_Ar1977782764le_alt @ Xs_12 )
        = ( cons_A1100118844le_alt @ X_4 @ nil_Ar10086284le_alt ) )
    <=> ( Xs_12
        = ( cons_A1100118844le_alt @ X_4 @ nil_Ar10086284le_alt ) ) ) ).

thf(fact_81_replicate__app__Cons__same,axiom,
    ! [N: nat,X_3: arrow_1346734812le_alt,Xs_11: list_A1528105233le_alt] :
      ( ( append1050458273le_alt @ ( replic235430982le_alt @ N @ X_3 ) @ ( cons_A1100118844le_alt @ X_3 @ Xs_11 ) )
      = ( cons_A1100118844le_alt @ X_3 @ ( append1050458273le_alt @ ( replic235430982le_alt @ N @ X_3 ) @ Xs_11 ) ) ) ).

thf(fact_82_hd__rev,axiom,
    ! [Xs_10: list_A1528105233le_alt] :
      ( ( Xs_10 != nil_Ar10086284le_alt )
     => ( ( hd_Arr689575519le_alt @ ( rev_Ar1977782764le_alt @ Xs_10 ) )
        = ( last_A2088691109le_alt @ Xs_10 ) ) ) ).

thf(fact_83_last__rev,axiom,
    ! [Xs_9: list_A1528105233le_alt] :
      ( ( Xs_9 != nil_Ar10086284le_alt )
     => ( ( last_A2088691109le_alt @ ( rev_Ar1977782764le_alt @ Xs_9 ) )
        = ( hd_Arr689575519le_alt @ Xs_9 ) ) ) ).

thf(fact_84_hd_Osimps,axiom,
    ! [X_2: arrow_1346734812le_alt,Xs_8: list_A1528105233le_alt] :
      ( ( hd_Arr689575519le_alt @ ( cons_A1100118844le_alt @ X_2 @ Xs_8 ) )
      = X_2 ) ).

thf(fact_85_hd__append,axiom,
    ! [Ys_2: list_A1528105233le_alt,Xs_7: list_A1528105233le_alt] :
      ( ( ( Xs_7 = nil_Ar10086284le_alt )
       => ( ( hd_Arr689575519le_alt @ ( append1050458273le_alt @ Xs_7 @ Ys_2 ) )
          = ( hd_Arr689575519le_alt @ Ys_2 ) ) )
      & ( ( Xs_7 != nil_Ar10086284le_alt )
       => ( ( hd_Arr689575519le_alt @ ( append1050458273le_alt @ Xs_7 @ Ys_2 ) )
          = ( hd_Arr689575519le_alt @ Xs_7 ) ) ) ) ).

thf(fact_86_hd__append2,axiom,
    ! [Ys_1: list_A1528105233le_alt,Xs_6: list_A1528105233le_alt] :
      ( ( Xs_6 != nil_Ar10086284le_alt )
     => ( ( hd_Arr689575519le_alt @ ( append1050458273le_alt @ Xs_6 @ Ys_1 ) )
        = ( hd_Arr689575519le_alt @ Xs_6 ) ) ) ).

thf(fact_87_rotate1__hd__tl,axiom,
    ! [Xs_5: list_A1528105233le_alt] :
      ( ( Xs_5 != nil_Ar10086284le_alt )
     => ( ( rotate1206725081le_alt @ Xs_5 )
        = ( append1050458273le_alt @ ( tl_Arr1336826979le_alt @ Xs_5 ) @ ( cons_A1100118844le_alt @ ( hd_Arr689575519le_alt @ Xs_5 ) @ nil_Ar10086284le_alt ) ) ) ) ).

thf(fact_88_hd__dropWhile,axiom,
    ! [P_3: arrow_1346734812le_alt > $o,Xs_4: list_A1528105233le_alt] :
      ( ( ( dropWh40674093le_alt @ P_3 @ Xs_4 )
       != nil_Ar10086284le_alt )
     => ~ ( P_3 @ ( hd_Arr689575519le_alt @ ( dropWh40674093le_alt @ P_3 @ Xs_4 ) ) ) ) ).

thf(fact_89_tl__append2,axiom,
    ! [Ys: list_A1528105233le_alt,Xs_3: list_A1528105233le_alt] :
      ( ( Xs_3 != nil_Ar10086284le_alt )
     => ( ( tl_Arr1336826979le_alt @ ( append1050458273le_alt @ Xs_3 @ Ys ) )
        = ( append1050458273le_alt @ ( tl_Arr1336826979le_alt @ Xs_3 ) @ Ys ) ) ) ).

thf(fact_90_distinct__tl,axiom,
    ! [Xs_2: list_A1528105233le_alt] :
      ( ( distin1107700095le_alt @ Xs_2 )
     => ( distin1107700095le_alt @ ( tl_Arr1336826979le_alt @ Xs_2 ) ) ) ).

thf(fact_91_distinct__dropWhile,axiom,
    ! [P_2: arrow_1346734812le_alt > $o,Xs_1: list_A1528105233le_alt] :
      ( ( distin1107700095le_alt @ Xs_1 )
     => ( distin1107700095le_alt @ ( dropWh40674093le_alt @ P_2 @ Xs_1 ) ) ) ).

thf(fact_92_dropWhile_Osimps_I1_J,axiom,
    ! [P_1: arrow_1346734812le_alt > $o] :
      ( ( dropWh40674093le_alt @ P_1 @ nil_Ar10086284le_alt )
      = nil_Ar10086284le_alt ) ).

thf(fact_93_dropWhile_Osimps_I2_J,axiom,
    ! [Xs: list_A1528105233le_alt,P: arrow_1346734812le_alt > $o,X_1: arrow_1346734812le_alt] :
      ( ( ( P @ X_1 )
       => ( ( dropWh40674093le_alt @ P @ ( cons_A1100118844le_alt @ X_1 @ Xs ) )
          = ( dropWh40674093le_alt @ P @ Xs ) ) )
      & ( ~ ( P @ X_1 )
       => ( ( dropWh40674093le_alt @ P @ ( cons_A1100118844le_alt @ X_1 @ Xs ) )
          = ( cons_A1100118844le_alt @ X_1 @ Xs ) ) ) ) ).

%----Helper facts (2)
thf(help_fequal_1_1_fequal_000tc__List__Olist_Itc__Arrow____Order____Mirabelle____sd,axiom,
    ! [X: list_A1528105233le_alt,Y: list_A1528105233le_alt] :
      ( ~ ( fequal194154450le_alt @ X @ Y )
      | ( X = Y ) ) ).

thf(help_fequal_2_1_fequal_000tc__List__Olist_Itc__Arrow____Order____Mirabelle____sd,axiom,
    ! [X: list_A1528105233le_alt,Y: list_A1528105233le_alt] :
      ( ( X != Y )
      | ( fequal194154450le_alt @ X @ Y ) ) ).

%----Conjectures (2)
thf(conj_0,hypothesis,
    a != b ).

thf(conj_1,conjecture,
    ? [C: arrow_1346734812le_alt] : ( distin1107700095le_alt @ ( cons_A1100118844le_alt @ a @ ( cons_A1100118844le_alt @ b @ ( cons_A1100118844le_alt @ C @ nil_Ar10086284le_alt ) ) ) ) ).

%------------------------------------------------------------------------------